home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Disc to the Future 2
/
Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin
/
MAC
/
THINKC
/
3_0
/
OIC_1
/
UPDATES
< prev
Wrap
Text File
|
1989-03-07
|
3KB
|
62 lines
OIC Updates
===========
** Shareware Release 1.0 to nets
14/Dec/88 Alphabetize generics in generics.h & generics.c
16/Dec/88 BUG! Remove free(seq) from deepInstances in IndexMixin.c
16/Dec/88++ Start adding Lisp Interpreter classes
- changed name of generic 'eq' to 'equal'
- added hashOf to String
15/Feb/89 Fix Bill Fancher's bug list -
accessing multiply-inherited IVs/CVs in oic.c, oic.h
IsAKindof in oic.c
_subs in class.c
17/Feb/89 Installed cantDo mechanism. method dispatch now invokes
'cantDo' if it can't find a method. Handled in default by
Object which prints an error message. oic.c, string.c, class.c,
object.c. Also added primitive "CanYouDo" to test if a class
(or its ancestors) implements the given generic.
17/Feb/89 Added ApplyGeneric oic.c
18/Feb to Added DependentsMixin class to provide change notification
4/Mar system. (sometimes called "active-value" programming).
Added a #define for "method" to "static". Changed all methods
in example classes to declare themselves "method" not "static" -
i.e. a cosmetic change.
Modified generic table structure to allow the keeping of a
list of all generics. Added the "generic" typedef being a
pointer to such a table.
Added a conditionally compilable code to the method dispatching
functions that will ignore generics invoked on NULL.
Added "forAll" as a synonym for "map" in Object.
Added "forAllGen" which a generic table reference over
a sequence with arguments. Made "forAll" (& "map") pass
optional arguments (in a very inelegant way). Added
specialisations of "forAll" & "forAllGen" to List to make
them much more efficient (it used to inherit the slow old
ways from Object).
Added "SuperFrom" primitive to complement "Super". This
takes an extra class argument which says explicitly from which
ancestor the method should be inherited.
Added "IVs" macro. This gets the IV structure pointers for ANY
object.
Fixed nasty "srealloc" bug in memory.c.
Added "StdioStream" class and changed all error messages
& debugging printing to use print generics on this stream
class rather than C library I/O. This factors the error/
debugging I/O into one simple class.
Made "dispose" in Object invalidate object so it wont respond
to generics any more. All classes should eventually Super this
method.
** Shareware Release 1.02 to nets (with early NameSpace stuff).